package com.ray.bean;

import java.util.List;

import lombok.Getter;
import lombok.Setter;

@Setter
@Getter
public class WarehouseInOutDetailBean implements Cloneable{
	private String id;// id
	private String purchseId;//采购单编号
	private int type;// 类型 1 订单采购入库 2 出库 3库存采购单入库
	private String exportType;// 导出excel时
	private String materialCode;// 物料代码
	private String materialName;// 物料名称
	private Double count;// 物料单位出入库数量
	private Double scrapCount;// 入库报废数
	private Double returnCount;//退回数量
	private Double noCount;// 不合格数
	private Double productionUnitOutCount;// 生产单位出库数量
	private String purcharseOrderId;// 采购单号 进入库有
	private String approvalUser;// 仓库确认人员
	private String createUserId; // 用于判断的登录人Id
	private String approvalTime;// 仓库确认时间
	private String approvalReason;// 审批理由
	private String createUser;// 采购人领料人
	private String createTime;// 制单时间
	private String customerName;// 客户名称
	private int status;// 状态
	private String exportStatus;
	private String Company;// 公司
	private String feedOrder;// 投料单关联单号
	private String position;// 仓位
	private String confirmTime;// 领料人确认时间
	private int confirmStatus;// 领料人是否确认 0 未确认 1 已确认
	private Double inCount;// 入库数
	private Double outCount;// 出库数
	private Integer warehouseType;// 仓库
	private String remark;// 备注
	private Double startCount;// 期初库存数
	private Double endCount; // 期末库存数
	private Integer isProductionUnit;
	private String deptId;// 部门id
	private String workShopId; // 车间id
	private String wareInPosition;// 入库仓位
	private String wareOutPosition;// 出库仓位
	private Integer warehouseInType; // 采购入库类型 1订单采购入库 2库存采购入库
	private String scheduledWarehouseOutTime;// 预计出库领料时间
	private String materialType;// 物料类型
	private String color;// 色号
	private String model;
	private String providerName;
	private String colorDescription;// 色号描述
	private String providerNo;//供方编号
	private int isCreate;// 是创建人
	private int isApperval;// 是确认人
	private int isAutoApproval; // 公司配置中.制单人可以审核
	private String inCountUnit;// 入库单位
	private Double inCountPrice;// 入库单价
	private Double outCountPrice;// 出库单价
	private String inOutUnit;// 出入库单位(生产单位或者物料单位)
	private Double sumMoneyCount;// 入库结算数量 李斌
	private String orderId;// 订单编号
	private String rowIndex;// 行号
	private Integer source;// 来源 1:报工
	private String warehouse;// 仓库
	private String factoryNo;
	private String customerNo;
	private String companyOrderId;// 公司订单编号
	private Integer sourceType;// 发料单 sourceType 单据类型 0 正常出入库单 1 发料单
	private String pickingPeople; // 发料单的领料人
	private int selfOutFuCount;//用户自己填写的付数,及我们算的付数
	private int isEquals;//单位是否相同
	private List<String> auditableUser;//可本订单可审核人
	
	//库存信息
	private Double productionUnitCount;//生产单位库存
	private Double materialCount;//物料单位库存
	private Double workOutCount;//车间退回数量
	private Double purchaseCount;//采购数量
	private Double unitPrice;
	private Double canOutCount;//能出库数
	
	//订单信息
	private int feedTotal;
	//类型描述
	private String typeText;
	
	private String address;//客户地址
	
	private String isApproval;//是否是发料单审核
	
	private Integer ralationWarehouse;//转仓关联仓位
	
	private Double inOutMoney;//出入库金额
	private Double returnMoney;//退回金额
	
	private Integer materialDeptId;//物料的部门
	private String materialDeptName;//物料的部门
	
	private String inDay;//入库日期
	
	private  int  isBalance;//是否结算
	
	private  String  otherId;//关联id
	private  Double  retuenSumMoneyCount;//返回计价数量
	
	private Integer isStages;//是否分期 0不分 1分期
	private Integer stagesCount;//分期数
	private Integer stagesInterval;//分期间隔
	
	private Double totalPayable;//上月应付
	private String payTime;//付款时间
	
	private Double receiptPaymentPrice;//已收付总额
	private Integer isTax;//是否含税 1不含税 2含税
	
    private String isTaxStr;//是否含税字符串
    
    private String defaultWarehouse;//默认仓位
    
    private String workShopName;//车间名称
	 
    public void setIsTaxStr() {
   	 if(this.getIsTax()==0) {
   		 this.isTaxStr = "无";
   	 }
   	 if(this.getIsTax()==1) {
   		 this.isTaxStr = "不含税";
   	 }
   	 if(this.getIsTax()==2) {
   		 this.isTaxStr = "含税";
   	 }
    }
	
	@Override
	public  Object clone() throws CloneNotSupportedException {
		WarehouseInOutDetailBean stu = null;  
        try{  
            stu = (WarehouseInOutDetailBean)super.clone();  
        }catch(CloneNotSupportedException e) {  
            e.printStackTrace();  
        }  
        return stu;  
	}
}
